/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package apus.persistence.memory;

import apus.persistence.*;

/**
 * Factory returns DAO object working with memory for every entity.
 * @author  Maxim Vasilevsky
 * @author  Roman Dyatkovsky
 * @since APUS v0.2
 * @see DaoFactory
 */
public class MemoryDAOFactory implements DaoFactory{

    @Override
    public AccountDAO getAccountDAO() {
        return new MemoryAccountDAO();
    }

    @Override
    public CallDAO getCallDAO() {
        return new MemoryCallDAO();
    }

    @Override
    public OrganizationDAO getOrganizationDAO() {
        return new MemoryOrganizationDAO();
    }

    @Override
    public PeriodDAO getPeriodDAO() {
        return new MemoryPeriodDAO();
    }

    @Override
    public PersonDAO getPersonDAO() {
        return new MemoryPersonDAO();
    }

    @Override
    public PhoneNumberDAO getPhoneNumberDAO() {
        return new MemoryPhoneNumberDAO();
    }    

    @Override
    public UserDAO getUserDAO() {
        throw new UnsupportedOperationException("Not supported yet.");
    }
}
